/*
* Copyright (c) [2023] Huawei Technologies Co.,Ltd.All rights reserved.
*
* OpenArkCompiler is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
*
*     http://license.coscl.org.cn/MulanPSL2
*
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR
* FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
*/
#include "cg_aggressive_opt.h"
#include "cg.h"

namespace maplebe {
bool CgAggressiveOpt::PhaseRun(maplebe::CGFunc &f) {
  auto *aggressiveOpt = f.GetCG()->CreateAggressiveOpt(*GetPhaseMemPool(), f);
  CHECK_FATAL(aggressiveOpt != nullptr, "vbOpt instance create failed");
  aggressiveOpt->DoOpt();
  return true;
}
MAPLE_TRANSFORM_PHASE_REGISTER_CANSKIP(CgAggressiveOpt, cgaggressiveopt)
}
